﻿namespace Azalea.ORMap
{
    public interface ISqlWhere
    {
        ISqlWhere And();
        ISqlWhere Or();
        ISqlWhere LeftBrace();
        ISqlWhere RightBrace();

        ISqlWhere IsNull(string field);
        ISqlWhere IsNotNull(string field);
        ISqlWhere Equals(string field, object value);
        ISqlWhere NotEquals(string field, object value);
        ISqlWhere Like(string field, object value);
        ISqlWhere NotLike(string field, object value);
        ISqlWhere GreaterThan(string field, object value);
        ISqlWhere GreaterThanOrEquals(string field, object value);
        ISqlWhere LessThan(string field, object value);
        ISqlWhere LessThanOrEquals(string field, object value);
        ISqlWhere In(string field, params object[] value);

        ICommandBuilder Done();
    }
}